import Pinyin from '@/utils/ChinesePY.js'
import { Dialog } from 'vant'
// 身份信息  获取名称 得到名称首字母
export function getName(fromScreen, value) {
  // 名称首字母 大写
  let fullNameFirst = ''
  let userName = ''
  fromScreen.essentialInformation.forEach(item => {
    // 获取名称首字母
    if (item.key === 'fullName') {
      if (item.value) {
        fullNameFirst = ToUppercase(item.value)
        userName = item.value
      } else {
        fullNameFirst = ''
      }
    }
    // 将获取到的首字母赋值
    if (item.key === 'fullNameFirst' && !item.value) {
      if (userName.length !== fullNameFirst.length) Dialog({ message: '请核对姓名拼音首字母，如有错误请修改。' })
      item.value = fullNameFirst
    }else if(item.key === 'fullNameFirst' && hasLowercase(item.value)){
       item.value = item.value.toUpperCase()
    }

    // 根据身份证获取出生年月
    if (+value.documentType === 1 && value.cardId) {
      if (item.key === 'birthDate') {
        // 赋值
        const IdCard = value.cardId
        item.value = IdCard.substring(6, 10) + "-" + IdCard.substring(10, 12) + "-" + IdCard.substring(12, 14)
      }
    }
  })
}

// 提取汉字首字母  并转换为大写
const ToUppercase = function (name) {
  const fullNameFirst = Pinyin.getWordsCode(name)
  return fullNameFirst.toUpperCase()
}

function hasLowercase(inputString) {
  const lowercaseRegex = /[a-z]/; // 正则表达式匹配小写字母
  return lowercaseRegex.test(inputString);
}



// 根据身份证号码获取性别
export function getSex(value, fromScreen) {
  if (value[16]) {
    let sex = ''
    if (+value[16] % 2 === 0) {
      sex = '女'
    } else {
      sex = '男'
    }
    const item = getPersonalDetailsItem(fromScreen, 'isSex')
    item.label = sex
    item.value = sex
  }
}

// 获取获取个人信息的item
function getPersonalDetailsItem(fromScreen, key) {
  let item = {}
  fromScreen.personalDetails.forEach(it => {
    if (it.key === key) item = it
  })
  return item
}
